package ro.bluecube.admlocal.registruagricol.entity;

public enum CategorieCod {
	TerenArabil("Teren arabil",1),
	PasuniNaturale("Pasuni naturale",2),
	FaneteNaturale("Fanete naturale",3),
	ViiPepiniere("Vii, pepiniere viticole si hameisti",4),
	ViiPeRod("din care: vii pe rod",5),
	LiveziPomi("Livezi de pomi, pepiniere, arbusti fructiferi",6),
	LiveziRod("din care livezi pe rod",7),
	TerenAgricolTotal("TEREN AGRICOL Total: 1+2+3+4+6",8),
	FondForestier("Fond forestier si alte terenuri cu vegetatie forestiera",9),
	CurtiCladiri("Curti si cladiri",10),
	AlteTerenuri("Alte terenuri",11),
	SuprafataTotala("SUPRAFATA TOTALA 8+9+10+11",12);
	
	private String categorie;
	private int cod;

	private CategorieCod(String categorie, int cod) {
		this.categorie = categorie;
		this.cod = cod;
	}

	@Override
	public String toString() {
		return categorie;
	}
	
	public Integer toInteger() {
		return cod;
	}
	public static CategorieCod fromInteger(Integer cod){
			switch(cod.intValue()) {
			case 1: return TerenArabil;
			case 2: return PasuniNaturale;
			case 3: return FaneteNaturale;
			case 4: return ViiPepiniere;
			case 5: return ViiPeRod;
			case 6: return LiveziPomi;
			case 7: return LiveziRod;
			case 8: return TerenAgricolTotal;
			case 9: return FondForestier;
			case 10: return CurtiCladiri;
			case 11: return AlteTerenuri;
			case 12: return SuprafataTotala;
			default : throw new IllegalArgumentException("The code: '" + cod + "' is not a valid Sex enum! (valid codes are: 1 .. 12)");
			}
	}
	public int getCod(){
		return cod;
	}
}